package com.weimob.mcloud.wechatwork.customer.service.user.module.bo.customer;

import com.weimob.mcloud.wechatwork.customer.service.user.module.bo.process.CustomerDetailProcessBO;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * @author baiyu
 * @description   外部联系人详细信息
 * @date: 2021/2/25
 */
@Data
public class CustomerDetailBO implements Serializable {
    private static final long serialVersionUID = 1568610603667996381L;

    /**
     * 外部联系人pid
     */
    private Long externalUserPid;

    /**
     * 外部联系人wid
     */
    private Long externalUserWid;

    /**
     * 客户分库分表唯一id
     */
    private String customerId;

    /**
     * 企业微信外部联系人id
     */
    private String externalUserId;

    /**
     * 外部联系人类型 1:微信用户 2:企业微信用户
     */
    private Integer externalUserType;

    /**
     * 昵称
     */
    private String nickName;

    /**
     * 头像
     */
    private String avatar;

    /**
     * 性别
     */
    private Integer gender;

    /**
     * 手机号
     */
    private String phone;

    // --- 客户扩展字段 ---
    private String mobiles;

    private String qq;

    private String birthday;

    private String province;

    private String city;

    private String district;

    private String address;
    /**
     * 客户标签
     */
    private List<TagDetailBO> tagDetailList;

    /**
     * 跟员工的关系
     */
    private List<ExternalUserRelationBO> userRelationBOList;

    /**
     * 客户类型：目前统一为微信，微信：1
     */
    private Integer customerType;

    /**
     * 客户是否已流失 true:已流失 false:未流失
     */
    private Boolean flowStatus;

    /**
     * 最近添加好友时间
     */
    private Long latestAddTime;
    /**
     * 添加方式描述
     //     * @see com.weimob.saas.mcloud.wechatwork.domain.enums.ExternalUserAddWayEnum
     */
    private String addWayDesc;

    /**
     * 二级添加方式描述
     */
    private String subAddWayDesc;

    /**
     * 用户和员工的好友个数
     */
    private Integer friendCount;
    /**
     * 用户群聊数
     */
    private Integer groupCount;

    private String unionid;

    /**
     * 职位
     */
    private String position;

    /**
     * 企业简称
     */
    private String corpName;

    /**
     * 企业全称
     */
    private String corpFullName;

    /**
     * CDP 手机号
     */
    private List<String> cdpMobilesList;

    /**
     * 归属门店名称
     */
    private String belongToStoreName;

    /**
     * 归属导购
     */
    private String belongToGuider;

    /**
     * 外部联系人消费信息
     */
    private ConsumeBO consumeBO;

    /**
     * 账户信息
     */
    private AccountBO accountBO;

    /**
     * 会员信息
     */
    private List<MemberBO> memberBOS;

    /**
     * 展示客户所属渠道
     * -1 未知，
     */
    private Integer belongToChannelType = -1;

    /**
     * 客户关联员工状态 0-有效 1-无效
     */
    private Integer status;

    /**
     * 流程-阶段信息
     */
    private List<CustomerDetailProcessBO> stageRelationList;

    /**
     * 客户星级
     */
    private Integer customerRating;

    /**
     * 首次添加时间
     */
    private Date firstAddTime;
}
